package Box2D.Dynamics
{
	import Box2D.Collision.Shapes.b2Shape;
	import Box2D.Common.b2Wrapper;
	
	public class b2FixtureDef extends b2Wrapper
	{
		private var _filter:b2Filter = new b2Filter;
		public function b2FixtureDef()
		{
			super();
			_wrapper = callDirect("b2FixtureDef_new");
			_filter.wrapper = _wrapper+21;
		}
		
		//public function get shape():*{return call('b2FixtureDef_GetShape')}
		public function set shape(value:b2Shape):void{call('b2FixtureDef_SetShape',value.wrapper)}
		
		public function get userData():*{return getPoint(4)}
		public function set userData(value:*):void{setPoint(4,value)}
		
		public function get friction():Number{return getNumber(8)}
		public function set friction(value:Number):void{setNumber(8,value)}
		
		public function get restitution():Number{return getNumber(12)}
		public function set restitution(value:Number):void{setNumber(12,value)}
		
		public function get density():Number{return getNumber(16)}
		public function set density(value:Number):void{setNumber(16,value)}
		
		public function get isSensor():Boolean{return getBoolean(20)}
		public function set isSensor(value:Boolean):void{setBoolean(20,value)}
		
		public function get filter():b2Filter{return _filter}				
	}
}